草庐IT

mysql - NodeJS + MySQL + Socket.IO : Update database

全部标签

javascript - NodeJS - Jest 单元测试 process.on 回调中的 setTimeout

我正在尝试在我的process.on('SIGTERM')回调中使用Jest对计时器进行单元测试,但它似乎从未被调用过。我正在使用jest.useFakeTimers()虽然它似乎在一定程度上模拟了setTimeout调用,但它并没有在setTimeout.mock中结束检查时对象。我的index.js文件:process.on('SIGTERM',()=>{console.log('GotSIGTERM');setTimeout(()=>{console.log('Timerwasrun');},300);});setTimeout(()=>{console.log('Timer2w

javascript - 使用 Express 和 Socket.IO 的 session 支持的解释?

我正在寻找一些帮助来确定依赖于express和socket.io的服务器上的session。主要目标是处理诸如将socket.iosessionID与用户ID配对、在重新连接时维护状态以及能够轻松地对服务器上的任何参与者进行分组等事情。非常感谢任何帮助。谢谢。 最佳答案 我刚刚上传了一个项目,它允许您在Socket.IO中使用express中的session。也许这对你有一些帮助。https://github.com/aviddiviner/Socket.IO-sessions您可以使用npminstallsocket.io-ses

javascript - Socket.IO:断开连接时的 XHR 轮询延迟

我正在使用socket.io和node.js。由于在套接字IO识别XHR-Polling客户端已断开连接之前有几秒钟的延迟,我在跟踪哪些用户在线时遇到了问题。如果XHR-Polling客户端刷新页面,他们的新连接消息似乎先于他们的断开连接消息。这会在尝试跟踪哪些用户在线时造成混淆。一种解决方案是在服务器端检测传输方法并延迟XHR-Polling客户端的连接,以确保首先运行断开连接功能。有没有人有这方面的经验? 最佳答案 正如@davin和@jcolebrand在评论中指出的那样,存在的主要问题是不能仅依赖连接。用户离开页面后,网络设

javascript - Node.js 和 Socket.IO - 房间问题

考虑多聊天应用程序。用户可以加入多个房间(socket.join(room)),用户可以离开一个房间(socket.leave(room))。当套接字离开房间时,我会通知其他房间参与者。如果socket当前在3个房间,并且他没有以正确的方式离开房间,突然断开与网站的连接,我该如何通知这些房间用户已经离开?如果我使用onsocketdisconnect事件,用户此时将不再在任何房间内。是保留一组单独的用户的唯一方法,还是有一些我没有想到的聪明方法? 最佳答案 在断开连接事件期间,套接字对您的进程仍然可用。例如,这应该有效io.sock

javascript - node.js 和 socket.io。 websocket 的传输类型配置?

Thisquestionconcernssocket.ioversions我在两周内测试了nodejs和socket.io。当我开始时,我从客户端的socket.send(message)函数中得到了问题。我无法向服务器发送任何消息。但我仍然可以从服务器接收消息。当我找到服务器端的配置传输时,我解决了这个问题:socket.set('transports',['xhr-polling','jsonp-polling']);一切都很好。现在我也可以向服务器发送消息了。但是我还有个疑问为什么要配置transport。默认socket.io使用这样的websocket传输设置:socket.

javascript - 最好的 NodeJS 库/包装器的在线支付服务

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion我正在寻找Chargify、Braintree或其他类似的在线支付解决方案。上下文是我正在使用NodeJS,现在只想测试如何在开发模式下使用在线支付。因此,对我而言,主要方面不是这些服务在实际应用程序中的工作方式,而是其中哪些具有为No

javascript - 使用 Bluebird promise bcrypt-nodejs

我正在使用NodeJS,bcrypt-nodejs(https://github.com/shaneGirish/bcrypt-nodejs)和Bluebird用于promises。想出了这段代码,并想知道是否有更好的方法来做同样的事情。我有模块:varPromise=require("bluebird"),bcrypt=Promise.promisifyAll(require('bcrypt-nodejs'));//....[someothecodehere]Users.prototype.setPassword=function(user){returnbcrypt.genSalt

javascript - 如何使用 nodeJs 将 jsreport 渲染保存到文件?

我是node.js和jsreport的新手,但我想做的是使用node.js在内存中创建一个pdf,然后将其保存到磁盘。我需要它是独立的,因为它将作为AWSLambda函数运行。varfs=require('fs');require("jsreport").render("Hithere!").then(function(out){//pipepdfwith"Hithere!"fs.writeFile('C:\\helloworld.pdf',out,function(err){if(err)returnconsole.log(err);console.log('HelloWorld>h

javascript - NodeJS 返回垃圾 JSON

我正在尝试使用NodeJS编写一段简单的代码,以从堆栈交换API获取JSON。这是我的目标API-https://api.stackexchange.com/2.2/users?order=desc&sort=reputation&inname=donal%20rafferty&site=stackoverflow这是我的代码:varhttps=require('https');//UseNodeJShttpsmodulefunctiongetUserDataByName(userName,callback){varstackOverflowUserURL='https://api.s

javascript - 如何使用 Aurelia.io 增强服务器端生成的页面?

我正在编写一个应用程序,其中一些部分作为SPA,一些页面在服务器端生成以用于SEO。我选择了Aurelia.io框架并使用enhance在我的页面上启用自定义元素的方法。但是我找不到在我的服务器端页面上使用aurelia特定模板指令和插值的最佳方法。让我们从一个例子开始。我的所有页面都包含一个动态标题。此header将是一个名为my-cool-header的自定义元素.此header将加载经过身份验证的用户并显示其名称,或者,如果当前没有用户经过身份验证,则会显示指向登录的链接。页面主体将在服务器端生成并缓存。所以,我们会有类似的东西:${user.name}Sign-inCachab